<html>
<head><meta charset="utf-8"><title>upstream feature backport · t-compiler/wg-llvm · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/187780-t-compiler/wg-llvm/index.html">t-compiler/wg-llvm</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/187780-t-compiler/wg-llvm/topic/upstream.20feature.20backport.html">upstream feature backport</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="238802736"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187780-t-compiler/wg-llvm/topic/upstream%20feature%20backport/near/238802736" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> cynecx <a href="https://rust-lang.github.io/zulip_archive/stream/187780-t-compiler/wg-llvm/topic/upstream.20feature.20backport.html#238802736">(May 14 2021 at 17:38)</a>:</h4>
<p>Is there any policy around back-porting a feature which has landed recently in upstream llvm?</p>



<a name="238803065"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187780-t-compiler/wg-llvm/topic/upstream%20feature%20backport/near/238803065" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nagisa <a href="https://rust-lang.github.io/zulip_archive/stream/187780-t-compiler/wg-llvm/topic/upstream.20feature.20backport.html#238803065">(May 14 2021 at 17:41)</a>:</h4>
<p>Ideally only fixes are backported.</p>



<a name="238803184"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187780-t-compiler/wg-llvm/topic/upstream%20feature%20backport/near/238803184" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nagisa <a href="https://rust-lang.github.io/zulip_archive/stream/187780-t-compiler/wg-llvm/topic/upstream.20feature.20backport.html#238803184">(May 14 2021 at 17:42)</a>:</h4>
<p>Even more ideally its only fixes for serious issues, but that has lately not been the case and we've been backporting less critical fixes quite often.</p>



<a name="238803419"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187780-t-compiler/wg-llvm/topic/upstream%20feature%20backport/near/238803419" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nagisa <a href="https://rust-lang.github.io/zulip_archive/stream/187780-t-compiler/wg-llvm/topic/upstream.20feature.20backport.html#238803419">(May 14 2021 at 17:43)</a>:</h4>
<p>Otherwise there is no written policy and backports are considered on a case-by-case basis.</p>



<a name="238803840"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187780-t-compiler/wg-llvm/topic/upstream%20feature%20backport/near/238803840" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> cynecx <a href="https://rust-lang.github.io/zulip_archive/stream/187780-t-compiler/wg-llvm/topic/upstream.20feature.20backport.html#238803840">(May 14 2021 at 17:46)</a>:</h4>
<blockquote>
<p>Otherwise there is no written policy and backports are considered on a case-by-case basis.</p>
</blockquote>
<p>To be more precise. I'd like to make inline-asm "unwindable". I've authored a patch which has landed recently (yesterday; <a href="https://reviews.llvm.org/rG8ec9fd483949ca3b23053effcac226dcc56e7a95">https://reviews.llvm.org/rG8ec9fd483949ca3b23053effcac226dcc56e7a95</a>). The patch is quite "contained" by itself and could be easily cherry-picked.</p>



<a name="238804323"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187780-t-compiler/wg-llvm/topic/upstream%20feature%20backport/near/238804323" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nagisa <a href="https://rust-lang.github.io/zulip_archive/stream/187780-t-compiler/wg-llvm/topic/upstream.20feature.20backport.html#238804323">(May 14 2021 at 17:50)</a>:</h4>
<p>Its more an issue of how plausible that the same feature will work with unpatched LLVM.</p>



<a name="238804621"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187780-t-compiler/wg-llvm/topic/upstream%20feature%20backport/near/238804621" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nagisa <a href="https://rust-lang.github.io/zulip_archive/stream/187780-t-compiler/wg-llvm/topic/upstream.20feature.20backport.html#238804621">(May 14 2021 at 17:51)</a>:</h4>
<p>Distributions generally use their own, unpatched LLVM. For soundness fixes we can't force their hand, and they generally only have the implication that the code generated by the distribution provided rust is less likely to run correctly.</p>



<a name="238804821"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187780-t-compiler/wg-llvm/topic/upstream%20feature%20backport/near/238804821" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nagisa <a href="https://rust-lang.github.io/zulip_archive/stream/187780-t-compiler/wg-llvm/topic/upstream.20feature.20backport.html#238804821">(May 14 2021 at 17:53)</a>:</h4>
<p>This change breaks the public API, so it seems like it isn't really likely that this would be backpoted and you'll probably have to wait until the LLVM 13 is released</p>



<a name="238804899"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187780-t-compiler/wg-llvm/topic/upstream%20feature%20backport/near/238804899" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> cynecx <a href="https://rust-lang.github.io/zulip_archive/stream/187780-t-compiler/wg-llvm/topic/upstream.20feature.20backport.html#238804899">(May 14 2021 at 17:54)</a>:</h4>
<p>I see. Yeh, <span class="user-mention" data-user-id="143274">@Amanieu</span> also said that this might cause issues with LTO (<a href="#narrow/stream/216763-project-inline-asm/topic/unwind.20option/near/238804422">https://rust-lang.zulipchat.com/#narrow/stream/216763-project-inline-asm/topic/unwind.20option/near/238804422</a>).</p>



<a name="238804995"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/187780-t-compiler/wg-llvm/topic/upstream%20feature%20backport/near/238804995" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Amanieu <a href="https://rust-lang.github.io/zulip_archive/stream/187780-t-compiler/wg-llvm/topic/upstream.20feature.20backport.html#238804995">(May 14 2021 at 17:55)</a>:</h4>
<p>The feature involves IR changes unfortunately, so it will have to wait until we upgrade to LLVM 13.</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>